class_name GameState
extends Node

signal state_transaction_requested(new_state:GameManager.State, data:GameStateData)

var manager : GameManager = null
var state_data : GameStateData = null 

func setup(context_manager: GameManager, context_state_data:GameStateData) -> void:
	manager = context_manager
	state_data = context_state_data
	
func transaction_state(new_state : GameManager.State,data : GameStateData = GameStateData.new()) ->void:
	state_transaction_requested.emit(new_state,data)
